"""
一、类
    定义类：class关键字，用于声明一个类。类名要求大驼峰：
    class 类名:
        pass
        属性，方法的定义

二、对象
    根据类，创建该类的对象。过程：叫做实例化
        对象，也叫实例---->哪个类的实例

三、对象访问类中的属性和方法
    对象.方法()--->调用
    对象.属性 = 赋值，取值

四、self，词义"自己，本身"
"""


#  固有属性   名字  身高  ....

# 行为方式   唱歌 跳舞  打游戏 学习...


#  类  --> 这个一个抽象体   是对某一类事物的抽象
#  类实例化之后的对象, 是一个一个具体的实例对象

class People:

    #  属性  和 方法
    #  静态   动态
    #  固有属性  行为  动作

    # 初始化属性
    def __init__(self, name, height):
        self.name = name
        self.height = height

    # 定义类的行为方式 方法
    def sing(self):
        print('sing--------')

    # self  就是实例化之后的对象
    def eat(self):
        print(self.name, 'eat--------')


p1 = People('zhangsan', '178')

#  类   对象(实例)
#  抽象  具体

# 初始化一个类  --> 类的实例化,也就是创建类的一个对象


print(p1)  # <__main__.People object at 0x00000000027BFF98>  对象(实例 instance 具体化的东西)
print(type(p1))  # <class '__main__.People'>

# 获取对象属性   对象.属性
print(p1.name)
print(p1.height)

p1.eat()
p1.sing()

p2 = People('xiaohong', 110)
print(p2.name)
p2.eat()

#  猫   类

# Cat  cate  clor ..
#   sleep ,catch ...

# 并且实例化出来一个白色的波斯猫
# 写一个类的方法 将猫的信息打印出来



